package com.personal.portal.admin.entity;

import com.mybatisflex.annotation.Table;
import com.personal.portal.common.entity.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.time.LocalDateTime;

/**
 * 项目表实体类
 *
 * @author zhanghui
 * @version 1.0.0
 * @since 2025-11-10
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Table("tp_projects")
public class Project extends BaseEntity {

    /**
     * 项目名称
     */
    private String name;

    /**
     * 项目分类
     */
    private String category;

    /**
     * 项目描述
     */
    private String description;

    /**
     * 项目技术栈（JSON格式）
     */
    private String techStack;

    /**
     * 项目链接
     */
    private String projectUrl;

    /**
     * 项目图片链接
     */
    private String imageUrl;

    /**
     * 项目状态（ongoing-进行中，completed-已完成，paused-暂停）
     */
    private String projectStatus;

    /**
     * 排序权重
     */
    private Integer sortOrder;

    /**
     * 开始时间
     */
    private LocalDateTime startDate;

    /**
     * 结束时间
     */
    private LocalDateTime endDate;

    /**
     * 演示链接
     */
    private String demoUrl;

    /**
     * 源码链接
     */
    private String sourceUrl;

    /**
     * 详细介绍
     */
    private String detail;
}